/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package pessoas.collection;

import java.io.FileNotFoundException;
import java.util.ArrayList;
import pessoas.model.Usuario;
import pessoas.serializacao.serializacaoArquivo;

/**
 *
 * @author Bush
 */
public class Usuarios {

    private ArrayList<Usuario> usuarios;
    private serializacaoArquivo serializacao;
    private static Usuarios instancia;

    private Usuarios() throws FileNotFoundException {
        usuarios = new ArrayList<Usuario>();
        serializacao = new serializacaoArquivo();
        usuarios = serializacao.carregaUsuarios();
    }

    public static Usuarios getInstancia() throws FileNotFoundException{
        if(instancia == null){
            instancia = new Usuarios();
        }
        return instancia;
    }
    public ArrayList<Usuario> getUsuarios() {
        return usuarios;
    }

    public boolean usuarioExiste(String nomeUsuario, String senha) {
        for (int i = 0; i < usuarios.size(); i++) {
            if (usuarios.get(i).getNomeUsuario().equals(nomeUsuario) && usuarios.get(i).getSenhaUsuario().equals(senha)) {
                return true;
            }
        }
        return false;
    }

    public Usuario retornaUsuario(String nomeUsuario, String senha) {
        for (int i = 0; i < usuarios.size(); i++) {
            if (usuarios.get(i).getNomeUsuario().equals(nomeUsuario) && usuarios.get(i).getSenhaUsuario().equals(senha)) {
                return usuarios.get(i);
            }
        }
        return null;
    }

    public void gravar(Usuario u) throws Exception {
        usuarios.add(u);
        serializacao.gravaUsuario(u);
    }

}
